0 # initial state (passengers at location A and B, destination D)

(0,2,'e',ConstantRewardFunction(-1))
(0,8,'f',ConstantRewardFunction(-1))


(1,2,'e',ConstantRewardFunction(-1))
(2,3,'a',ConstantRewardFunction(-1))
(1,3,'a',ConstantRewardFunction(-1))
(3,2,'e',ConstantRewardFunction(-1))
(2,1,'!e&!a&!n',ConstantRewardFunction(-1))

(3,4,'!e&!a&!n',ConstantRewardFunction(-1))
(4,3,'a',ConstantRewardFunction(-1))

(4,5,'d',ConstantRewardFunction(-1))
(5,6,'h',ConstantRewardFunction(-1))
(4,6,'h',ConstantRewardFunction(-1))
(5,4,'!d&!h&!n',ConstantRewardFunction(-1))
(6,5,'d',ConstantRewardFunction(-1))


(7,8,'f',ConstantRewardFunction(-1))
(8,9,'b',ConstantRewardFunction(-1))
(7,9,'b',ConstantRewardFunction(-1))
(9,8,'f',ConstantRewardFunction(-1))
(8,7,'!f&!b&!n',ConstantRewardFunction(-1))

(9,10,'!f&!b&!n',ConstantRewardFunction(-1))
(10,9,'b',ConstantRewardFunction(-1))

(10,11,'d',ConstantRewardFunction(-1))
(11,12,'h',ConstantRewardFunction(-1))
(10,12,'h',ConstantRewardFunction(-1))
(11,10,'!d&!h&!n',ConstantRewardFunction(-1))
(12,11,'d',ConstantRewardFunction(-1))


(6,13,'m',ConstantRewardFunction(500))
(12,13,'m',ConstantRewardFunction(500))
(6,7,'!m',ConstantRewardFunction(-1))
(12,1,'!m',ConstantRewardFunction(-1))



(1,14,'n',ConstantRewardFunction(-100))
(14,1,'!n&!a&!e',ConstantRewardFunction(-1))
(2,14,'n',ConstantRewardFunction(-100))
(14,2,'e',ConstantRewardFunction(-1))
(14,3,'a',ConstantRewardFunction(-1))
(14,14,'n',ConstantRewardFunction(-100))

(3,15,'n',ConstantRewardFunction(-100))
(15,3,'b',ConstantRewardFunction(-1))
(15,4,'!n&!b&!f',ConstantRewardFunction(-1))
(15,15,'n',ConstantRewardFunction(-100))

(4,16,'n',ConstantRewardFunction(-100))
(16,4,'!n&!d&!h',ConstantRewardFunction(-1))
(5,16,'n',ConstantRewardFunction(-100))
(16,5,'d',ConstantRewardFunction(-1))
(16,6,'h',ConstantRewardFunction(-1))
(16,16,'n',ConstantRewardFunction(-100))


(7,17,'n',ConstantRewardFunction(-100))
(17,7,'!n&!b&!f',ConstantRewardFunction(-1))
(8,17,'n',ConstantRewardFunction(-100))
(17,8,'f',ConstantRewardFunction(-1))
(17,9,'b',ConstantRewardFunction(-1))
(17,17,'n',ConstantRewardFunction(-100))

(9,18,'n',ConstantRewardFunction(-100))
(18,9,'b',ConstantRewardFunction(-1))
(18,10,'!n&!b&!f',ConstantRewardFunction(-1))
(18,18,'n',ConstantRewardFunction(-100))

(10,19,'n',ConstantRewardFunction(-100))
(19,10,'!n&!d&!h',ConstantRewardFunction(-1))
(11,19,'n',ConstantRewardFunction(-100))
(19,11,'d',ConstantRewardFunction(-1))
(19,12,'h',ConstantRewardFunction(-1))
(19,19,'n',ConstantRewardFunction(-100))



(13,13,'True',ConstantRewardFunction(0)) # final state
